In a telecom network it is customary to have value added services that can be executed on certain occasions. Typically, these services are triggered by a network event, e.g. a subscriber calling another subscriber or a specific service number.
It is known to provide the ability to combine many different services into composite services, sometimes referred to as “skeletons”. On a network event, one of these composite services needs to be selected, using a selection procedure, and executed. This selection is normally based on data available in the service invocation request, such as destination address. The selection can also be based on provisioning data.
Each composite service may be associated with criteria, such as a priority or a specific execution sequence, that define the applicability of the composite service to a particular network event. For each network event, the criteria of each composite service are evaluated, indicating whether the composite service is applicable.
It can occur that the selection procedure results in multiple applicable composite services, from which a single composite service needs to be selected for execution. A known selection procedure is based on using pre-defined priorities to select the composite service to be executed. This mechanism exhibits two problems:                It still can result in more than one composite service being selected, unless each composite service is given a different, unique priority.        The priority mechanism is static and does not take into account that the nature of criteria for different composite services may differ.        